﻿Imports System.Data.Common

Public Class Tercero
    Public COD_LISTA_PRECIO, COD_USUARIO, CLASE_CATEGORIA, CLASE_REGIMEN, CLASE_DOCUMENTO, _
        NIT, PRIMER_APELLIDO, SEGUNDO_APELLIDO, PRIMER_NOMBRE, SEGUNDO_NOMBRE, RAZON_SOCIAL, _
        DIRECCION, TELEFONO1, TELEFONO2, CELULAR, FAX, PBX, EMAIL, FECHA_NACIMIENTO, PLAN, _
        FECHA_REGISTRO, OBSERVACION, NOM_CLASE_REGIMEN As String
    Public ID_TERCERO, ID_MUNICIPIO As Decimal
    Public DIG_VER, ES_CLIENTE, ES_PROVEEDOR, ES_AUTORETENEDOR, ES_REG_ESPECIAL, ESTADO As Char

    Public Shared Function ConsultarAll() As DataTable
        Dim conexion As New ConexionBD.ConexionBD()
        Dim dtConsulta As New DataTable
        If conexion.Conectar() Then
            Dim sentencia As String
            sentencia = "SELECT * FROM TERCERO"
            dtConsulta = conexion.Consulta(sentencia)
            conexion.Desconectar()
        End If
        Return dtConsulta
    End Function

    Public Shared Function ConsultarTercero() As DataTable
        Dim conexion As New ConexionBD.ConexionBD()
        Dim dtConsulta As New DataTable
        If conexion.Conectar() Then
            Dim sentencia As String
            sentencia = "SELECT ID_TERCERO,NIT,PRIMER_APELLIDO+' '+PRIMER_NOMBRE AS NOMBRE," + _
                "RAZON_SOCIAL,DIRECCION,TELEFONO1 FROM TERCERO"
            dtConsulta = conexion.Consulta(sentencia)
            conexion.Desconectar()
        End If
        Return dtConsulta
    End Function

    Public Shared Function ConsxIdTercero(ter As Tercero) As DataTable
        Dim conexion As New ConexionBD.ConexionBD()
        Dim dtConsulta As New DataTable
        If conexion.Conectar() Then
            Dim sentencia As String
            sentencia = "SELECT * FROM TERCERO WHERE ID_TERCERO=@ID_TERCERO"
            conexion.ParametroEntrada = New List(Of DbParameter)
            conexion.ParametroEntrada.Add(ConexionBD.ConexionBD.ParamInDecimal(conexion, _
                                                                              ter.ID_TERCERO, "ID_TERCERO"))
            dtConsulta = conexion.Consulta(sentencia)
            conexion.Desconectar()
        End If
        Return dtConsulta
    End Function

    Public Shared Function ConsxNitApeNomLike(filtro As String) As DataTable
        Dim dtConsulta As New DataTable
        If Not String.IsNullOrEmpty(filtro) Then
            filtro = "%" + filtro + "%"
            Dim conexion As New ConexionBD.ConexionBD()
            If conexion.Conectar() Then
                Dim sentencia As String
                sentencia = "SELECT T.ID_TERCERO, T.NIT, T.RAZON_SOCIAL, T.DIRECCION, T.TELEFONO1," +
                    "T.CLASE_REGIMEN, T.COD_LISTA_PRECIO, T.ID_MUNICIPIO, T.ES_AUTORETENEDOR, T.ES_REG_ESPECIAL, R.DESCRIPCION AS NOM_CLASE_REGIMEN FROM TERCERO T, CLASE_REGIMEN R WHERE T.CLASE_REGIMEN = R.CLASE_REGIMEN  AND T.NIT like " + _
                    "@filtro or T.RAZON_SOCIAL like @filtro ORDER BY T.RAZON_SOCIAL"
                conexion.ParametroEntrada = New List(Of DbParameter)
                conexion.ParametroEntrada.Add(ConexionBD.ConexionBD.ParamInString(conexion, _
                                                                                  filtro, "filtro"))
                dtConsulta = conexion.Consulta(sentencia)
                conexion.Desconectar()
            End If
        End If
        Return dtConsulta
    End Function

End Class
